package git.soulbgm.common.enums;

/**
 * 操作类型
 *
 * @author SoulBGM
 * @date 2022/11/18 13:15
 */
public enum OperationType {
    /**
     * 添加
     */
    ADD(1, "添加"),
    /**
     * 更新
     */
    UPDATE(2, "更新"),
    /**
     * 删除
     */
    REMOVE(3, "删除"),
    /**
     * 导出
     */
    EXPORT(4, "导出"),
    /**
     * 导入
     */
    IMPORT(5, "导入"),
    /**
     * 登录
     */
    LOGIN(6, "登录"),
    /**
     * 注销
     */
    LOGOUT(7, "注销"),
    /**
     * 审核
     */
    AUDIT(8, "审核");

    OperationType(int code, String description) {
        this.code = code;
        this.description = description;
    }

    public int code;
    public String description;

    /**
     * 通过类型标识获取枚举对象
     *
     * @param code 类型标识
     * @return {@link OperationType}
     */
    public static OperationType get(int code) {
        if (code == ADD.code) {
            return ADD;
        } else if (code == UPDATE.code) {
            return UPDATE;
        } else if (code == REMOVE.code) {
            return REMOVE;
        } else if (code == EXPORT.code) {
            return EXPORT;
        } else if (code == IMPORT.code) {
            return IMPORT;
        } else if (code == LOGIN.code) {
            return LOGIN;
        } else if (code == LOGOUT.code) {
            return LOGOUT;
        } else {
            return AUDIT;
        }
    }

}
